// SPDX-License-Identifier: GPL-2.0-or-later
// Copyright 2019 IBM Corp.

/dts-v1/;

#include "aspeed-g6.dtsi"

/ {
	model = "AST2600 EVB";
	compatible = "aspeed,ast2600";

	aliases {
		serial4 = &uart5;
	};

	chosen {
		bootargs = "console=ttyS4,115200n8";
	};

	memory@80000000 {
		device_type = "memory";
		reg = <0x80000000 0x80000000>;
	};
};

&mdio1 {
	status = "okay";

	ethphy1: ethernet-phy@0 {
		compatible = "ethernet-phy-ieee802.3-c22";
		reg = <0>;
	};
};

&mdio2 {
	status = "okay";

	ethphy2: ethernet-phy@0 {
		compatible = "ethernet-phy-ieee802.3-c22";
		reg = <0>;
	};
};

&mdio3 {
	status = "okay";

	ethphy3: ethernet-phy@0 {
		compatible = "ethernet-phy-ieee802.3-c22";
		reg = <0>;
	};
};

&mac1 {
	status = "okay";

	phy-mode = "rgmii";
	phy-handle = <&ethphy1>;

	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_rgmii2_default>;
};

&mac2 {
	status = "okay";

	phy-mode = "rgmii";
	phy-handle = <&ethphy2>;

	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_rgmii3_default>;
};

&mac3 {
	status = "okay";

	phy-mode = "rgmii";
	phy-handle = <&ethphy3>;

	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_rgmii4_default>;
};

&emmc_controller {
	status = "okay";
};

&emmc {
	non-removable;
	bus-width = <4>;
	max-frequency = <52000000>;
};

&rtc {
	status = "okay";
};

&fmc {
	status = "okay";
	flash@0 {
		status = "okay";
		m25p,fast-read;
		label = "bmc";
		spi-max-frequency = <50000000>;

		partitions {
			compatible = "fixed-partitions";
			#address-cells = <1>;
			#size-cells = <1>;

			u-boot@0 {
				reg = <0x0 0xe0000>; // 896KB
				label = "u-boot";
			};

			u-boot-env@e0000 {
				reg = <0xe0000 0x20000>; // 128KB
				label = "u-boot-env";
			};

			kernel@100000 {
				reg = <0x100000 0x900000>; // 9MB
				label = "kernel";
			};

			rofs@a00000 {
				reg = <0xa00000 0x2000000>; // 32MB
				label = "rofs";
			};

			rwfs@6000000 {
				reg = <0x2a00000 0x1600000>; // 22MB
				label = "rwfs";
			};
		};
	};
};

&spi1 {
	status = "okay";
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_spi1_default>;

	flash@0 {
		status = "okay";
		m25p,fast-read;
		label = "pnor";
		spi-max-frequency = <100000000>;
	};
};

&uart5 {
	// Workaround for A0
	compatible = "snps,dw-apb-uart";
};

&i2c0 {
	status = "okay";

	temp@2e {
		compatible = "adi,adt7490";
		reg = <0x2e>;
	};
};

&i2c1 {
	status = "okay";
};

&i2c2 {
	status = "okay";
};

&i2c3 {
	status = "okay";
};

&i2c4 {
	status = "okay";
};

&i2c5 {
	status = "okay";
};

&i2c6 {
	status = "okay";
};

&i2c7 {
	status = "okay";
};

&i2c8 {
	status = "okay";
};

&i2c9 {
	status = "okay";
};

&i2c12 {
	status = "okay";
};

&i2c13 {
	status = "okay";
};

&i2c14 {
	status = "okay";
};

&i2c15 {
	status = "okay";
};

&fsim0 {
	status = "okay";
};
